package com.hsyt.pms.security.entity;


import com.alibaba.fastjson.JSON;
import com.hsyt.pms.api.common.PageParam;


/**
 * @ClassName: FunctionQueryDto
 * @Description:封装Function的查询条件
 * @author caijg@hsyuntai.com
 * @date 2017年8月29日 下午3:29:07
 */
public class FunctionQueryDto extends PageParam {

	private static final long serialVersionUID = -8429915525283956090L;
	
	
	/** @Fields id : 主键Id*/
	private long id;
	
	/** @Fields name : 菜单名 如：'参数管理'*/
	private String name;
	
	/** @Fields code : 编码*/
	private String code;
	
	/** @Fields level : code对应的级别*/
	private Byte level;
	
	/** @Fields functionUrl : 权限对应的可访问的的url 如：'/system/user/page'*/
	private String functionUrl;
	
	/** @Fields functionType : 功能权限资源类别。1表示菜单权限功能（有菜单层级，可视化控制及url拦截控制） ，
	 * 2表示按钮、链接功能权限资源（资源原子，可视化控制及url拦截控制）；3表示接口功能权限资源（纯url拦截控制）*/
	private Byte functionType;
	
	/** @Fields platformType : 平台类型*/
	private String platformType;
	
	/** @Fields parentCode : 父级权限对应的编码 如：'ROLE_SYSTEM_MG'*/
	private String parentCode;
	
	/** @Fields createTimeStart : 创建时间从什么时候开始*/
	private String createTimeStart; 
    
    /** @Fields createTimeEnd : 创建时间到什么时候*/
    private String createTimeEnd;	

    /** @Fields updateTimeStart : 更新时间从什么时候开始*/
    private String updateTimeStart; 

    /** @Fields updateTimeEnd : 更新时间到什么时候*/
    private String updateTimeEnd;
    
    /** @Fields status : 当前状态：enabled或disabled*/
    private String status;
    
	public long getId() {
		return id;
	}

	public void setId(long id) {
		this.id = id;
	}

	public static long getSerialversionuid() {
		return serialVersionUID;
	}
	
	public Byte getLevel() {
		return level;
	}

	public void setLevel(Byte level) {
		this.level = level;
	}

	public String getParentCode() {
		return parentCode;
	}

	public void setParentCode(String parentCode) {
		this.parentCode = parentCode;
	}
	
	public String getPlatformType() {
		return platformType;
	}

	public void setPlatformType(String platformType) {
		this.platformType = platformType;
	}
	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public String getFunctionUrl() {
		return functionUrl;
	}

	public void setFunctionUrl(String functionUrl) {
		this.functionUrl = functionUrl;
	}

	public Byte getFunctionType() {
		return functionType;
	}

	public void setFunctionType(Byte functionType) {
		this.functionType = functionType;
	}
	
	public String getCreateTimeStart() {
		return createTimeStart;
	}

	public void setCreateTimeStart(String createTimeStart) {
		this.createTimeStart = createTimeStart;
	}

	public String getCreateTimeEnd() {
		return createTimeEnd;
	}

	public void setCreateTimeEnd(String createTimeEnd) {
		this.createTimeEnd = createTimeEnd;
	}

	public String getUpdateTimeStart() {
		return updateTimeStart;
	}

	public void setUpdateTimeStart(String updateTimeStart) {
		this.updateTimeStart = updateTimeStart;
	}

	public String getUpdateTimeEnd() {
		return updateTimeEnd;
	}

	public void setUpdateTimeEnd(String updateTimeEnd) {
		this.updateTimeEnd = updateTimeEnd;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@Override
	public String toString() {
		return JSON.toJSONString(this);
	}
}
